<?php

/**
 * Lord_View_Helper_Image
 *
 * Хэлпер для стандартизации отображения картинки в списках товаров
 *
 * @author Игорь Будасов aka Lord <igor.budasov@gmail.com>
 */

class Lord_View_Helper_Image extends Zend_View_Helper_Abstract
{

/*------------------------------------------------------------------------------*/

	/**
	*
	*
	* @param int $id
	*/

	public function image($source = array(), $id = 0)
	{               
		// если картинка отображается в списке товаров
		if($id != 0 )
		{   
			$fileSrc = $this->view->baseUrl . 'content/store/goods/min/'.$source[$id]['file'];
			
			if(!isset($source[$id]['file']) or empty($source[$id]['file']) or !is_file(getcwd() . $fileSrc))
			{        
				$fileSrc = $this->view->imagesUrl.'store/no_photo.jpeg';
			}
			echo '<a href="'.$this->view->baseUrl.'good/'.$source[$id]['goodUrl'].'"><img src="'.$fileSrc.'" ></a>';
		}
		// если картинка отображается на персональной страничке товара
		elseif($id == 0)
		{
			// отображение главной картинки товара
			if(!empty($source))
			{
				echo'<a href="'.$this->view->baseUrl.'content/store/goods/mid/'.$source[0]['file'].'"
				   rel="lightbox">
				<img src="'.$this->view->baseUrl.'content/store/goods/mid/'.$source[0]['file'].'"
					 title="'.$this->view->good->name.'" class="main">
				</a><br />';
			}
			else
			{
				echo'<img src="'.$this->view->imagesUrl.'store/no_photo.jpeg"
					 title="'.$this->view->good->name.'" class="main"><br />';
			}
			// если картинок больше чем одна - покажем их ниже в виде тумбочек
			if(count($source) > 1)
			{
				// удалим из картинок главную, чтоб не смотреть ее второй раз
				unset($source[0]);
				foreach($source as $image)
				{
					echo '<a href="'.$this->view->baseUrl.'content/store/goods/mid/'.$image['file'].'"
					   title="'.$image['name'].'"
					   rel="lightbox['.$image['gid'].']"><img src="'.$this->view->baseUrl.'content/store/goods/min/'.$image['file'].'"
						 alt="'.$image['name'].'" class="other"></a>';
				}
			}
		}

	   return;
	}
}
